非推奨のスプラッシュ スクリーン API の移行
Flutter 2.5 より前は、Flutter アプリでスプラッシュを追加できました
アプリケーションマニフェストファイルのメタデータ内で定義することで画面を表示します
(AndroidManifest.xml
)、実装することでprovideSplashScreen
内部
彼らのFlutterActivity
、 または両方。これはその間に一時的に表示されます
Android 起動画面が表示されてから、Flutter が起動した後の時間
最初のフレームを描きました。このアプローチは、Flutter 2.5 以降では非推奨になりました。
Flutter は Android 起動画面を自動的に表示し続けるようになりました
最初のフレームを描画するまで。
カスタム スプラッシュ スクリーンの定義からカスタム スプラッシュ スクリーンの定義のみに移行するには アプリケーションの起動画面で、対応する手順に従います。 アプリケーションのカスタム スプラッシュ スクリーンがどのように定義されているか 2.5 リリースより前。
で定義されたカスタム スプラッシュ画面FlutterActivity
-
アプリケーションの実装を見つけます。
provideSplashScreen()
その中でFlutterActivity
と消して。この実装には次のことが含まれます。 アプリケーションのカスタム スプラッシュ スクリーンの構築 としてDrawable
。例えば:@Override public SplashScreen provideSplashScreen() { // ... return new DrawableSplashScreen( new SomeDrawable( ContextCompat.getDrawable(this, R.some_splash_screen))); }
-
すぐ後のセクションの手順を使用して、
Drawable
スプラッシュ画面 (R.some_splash_screen
前の例では) アプリケーションのカスタム起動画面として適切に設定されています。
マニフェストで定義されたカスタム スプラッシュ画面
-
アプリケーションを見つけます
AndroidManifest.xml
ファイル。 このファイル内で、activity
エレメント。 この要素内で、android:theme
属性 そしてそのmeta-data
を定義する要素 スプラッシュ画面としてio.flutter.embedding.android.SplashScreenDrawable
、 そしてそれを更新します。例えば:<activity // ... android:theme="@style/SomeTheme"> // ... <meta-data android:name="io.flutter.embedding.android.SplashScreenDrawable" android:resource="@drawable/some_splash_screen" /> </activity>
-
もし
android:theme
属性が指定されていない場合は、属性を追加して、起動テーマを定義するアプリケーションの起動画面用。 -
を削除します
meta-data
Flutter が廃止されたため、要素 それを使用しますが、クラッシュを引き起こす可能性があります。 -
で指定されたテーマの定義を見つけます。
android:theme
属性 アプリケーション内でstyle
資力。このテーマで指定するのは、 アプリケーションの起動テーマ。次のことを確認してください。style
属性はandroid:windowBackground
カスタム スプラッシュ スクリーンの属性を変更します。例えば:<resources> <style name="SomeTheme" // ... > <!-- Show a splash screen on the activity. Automatically removed when Flutter draws its first frame --> <item name="android:windowBackground">@drawable/some_splash_screen</item> </style> </resources>